$(document).ready(function(){
    $("#calendar").calendar();
    atendimento.validaServerAtend();
    atendimento.deleteAtendimento();
    atendimento.buscaPaciente();
    atendimento.initDtIni();
    atendimento.initNovoAtend();
});

atendimento = {
    validaAtendimento:function(){

        removeMsgErro(new Array('validaAtendimento1','validaAtendimento2','validaAtendimento3','validaAtendimento4',
            'validaAtendimento5','validaAtendimento6','validaAtendimento7'), '#modalAtend');
        var erros = new Array();
        if(isEmpty($('#dt_atendimento').val())){
            erros['validaAtendimento1']= 'A \'Data de Atendimento\' deve ser preenchida.';
        }else if(!dateIsValid($('#dt_atendimento').val())){
            erros['validaAtendimento1']= 'A \'Data de Atendimento\' é inválida.';
        }
        
        if(isEmpty($('#funcionario').val())){
            erros['validaAtendimento2']= 'O \'Profissional\' deve ser preenchido.';
        }
        
        if(isEmpty($('#segmento').val())){
            erros['validaAtendimento3']= 'O \'Segmento\' deve ser preenchido.';
        }
        
        if(isEmpty($('#hora').val())){
            erros['validaAtendimento4']= 'A \'hora\' deve ser preenchido.';
        }
        
        if(isEmpty($('#atividade').val())){
            erros['validaAtendimento5']= 'A \'hora\' deve ser preenchida.';
        }
        
        if(isEmpty($('#atividade').val())){
            erros['validaAtendimento5']= 'A \'Atividade\' deve ser preenchida.';
        }
        
        if(isEmpty($('#valor').val())){
            erros['validaAtendimento6']= 'O \'Valor\' deve ser preenchido.';
        }
        
        if(isEmpty($('#dt_faturamento').val())){
            erros['validaAtendimento7']= 'A \'Data de Faturamento\' deve ser preenchida.';
        }else if(!dateIsValid($('#dt_faturamento').val())){
            erros['validaAtendimento7']= 'A \'Data de Faturamento\' é inválida.';
        }
        
        if(size(erros)>0){
            exibeMsgErro(erros, null, '#modalAtend');
            return false;
        }
        
        return true;
    },
    
    validaServerAtend:function(){
        $('#btnEnviarAtend').live('click',function(){
            if(atendimento.validaAtendimento()){
                removeMsgErro(new Array('salvaAtendimento'), '#modalAtend');
                var data = $('#modalAtend #edicao input,#modalAtend #edicao textarea, #modalAtend #edicao select').serialize();
                $.ajax({
                    url: '/atendimento/insere/valida',
                    dataType: 'json',
                    type: 'POST',
                    contentType: "application/x-www-form-urlencoded;charset=UTF-8",
                    data:data,
                    beforeSend: function(){
                    },
                    success: function(data){
                        if(!isEmpty(data.erros)){
                            for (i = 0; i < data.erros.length; i++) {
                                exibeMsgErro(data.erros[i], 'salvaAtendimento','#modalAtend');
                            }
                        }else{
                            atendimento.salvaAtendimento(data);
                        }
                    }
                });
            }
        });
        
    },
    
    salvaAtendimento:function(data){
        $.ajax({
            url: '/atendimento/insere/novo',
            dataType: 'json',
            type: 'POST',
            contentType: "application/x-www-form-urlencoded;charset=UTF-8",
            data:$('#modalAtend #edicao input,#modalAtend #edicao textarea, #modalAtend #edicao select').serialize(),
            success: function(saida){
                if(saida.msg == 'ok'){
                    $("#calendar").calendar({
                        action:'fecharModal'
                    });
                }
            }
        });
    },
    
    deleteAtendimento:function(){
        $('#btnExcluAtend').live('click',function(){
            var answer = confirm("Tem ceretesa que deseja excluir?");
            if (answer){
                if(isEmpty($('#edicao #codigo').val())){
                    atendimento.limpaCamposDialog();
                    $("#calendar").calendar({
                        action:'fecharModal'
                    });
                }else{
                    removeMsgErro(new Array('deleteAtendimento'), '#modalAtend');
                    $.ajax({
                        url: '/atendimento/insere/delete',
                        dataType: 'json',
                        type: 'POST',
                        contentType: "application/x-www-form-urlencoded;charset=UTF-8",
                        data:$('#modalAtend #edicao #codigo').serialize(),
                        success: function(saida){
                            if(!isEmpty(saida.erros)){
                                for (i = 0; i < saida.erros.length; i++) {
                                    exibeMsgErro(saida.erros[i], 'deleteAtendimento','#modalAtend');
                                }
                            }else if(saida.msg == 'ok'){
                                $("#calendar").calendar({
                                    action:'fecharModal'
                                });
                            }
                        }
                    });
                }
            }
        });
    },
    
    limpaCamposDialog:function(){
        $('#edicao input,#edicao select, #edicao textarea, #searchPaciente input, #searchPaciente select').not('.btn-large').val('');
    },
    
    buscaPaciente:function(){
        $('a.#buscaCliente').live('click',function(event){
            event.preventDefault();
            $('div.#edicao').css('display','none');
            $('div.#searchPaciente').css('display','inline');
        });
    },
    initDtIni:function(){
        $('#dt_inicial').datepicker();
    },
     
    initNovoAtend:function(){
        $('#novo_atendimento').live('click',function(){
            $("#calendar").calendar({
                action:'novoAtendi'
            });
        });
    },
    atualizaPlanosSaude:function(codigoPessoa){
        $.ajax({
            url: '/planoSaude/consulta/lista-by-pessoa',
            dataType: 'html',
            type: 'POST',
            contentType: "application/x-www-form-urlencoded;charset=UTF-8",
            data:{'codigo':codigoPessoa},
            success: function(saida){
                if(!isEmpty(saida)){
                    $('#edicao #plano_saude').html(saida);
                }
            }
        });
    }
};